function [salida,s1]=propagacionM21(pulso,s,x,z,c,fs,Fpulso,back)

%Idea, propago el pulso en emisión hacia el punto (x,z) mediante la función
%de transferencia apropiada (asumiendo propagación estilo Huygens)
%Trabajo en espacio de Fourier
%Trabajo con las frecuencias positivas para ahorrar cuentas

if nargin<8
    back=0;
end
if nargin<7
    [M,N]=size(pulso);
    Fpulso=fft(pulso); %FFT por columnas (por sensor)
    Fpulso=Fpulso(1:(M/2+1),:);
else
    %ignoro entrada pulso
    M=round(2*(size(Fpulso,1)-1));
    N=size(Fpulso,2);
end
[inv_modR,delay]=prop(x,z,0,0,c);

if back==1 %Back-propagation
    delay=-delay;
    inv_modR=1./inv_modR;
end
[YFpredata,s1]=retardar(pulso,s,fs,delay,Fpulso);
%-----------------------------------
if nargin<6
    salida=(reconstr(YFpredata)*(inv_modR));
else
    salida=YFpredata*(inv_modR);
end
    
end